package com.zhentao.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 积分申请表
 * @TableName points_apply
 */
@TableName(value ="points_apply")
@Data
public class PointsApply implements Serializable {
    /**
     *
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 关联student.id
     */
    private Integer studentId;

    /**
     * 申请教师(关联teacher.id)
     */
    private Integer teacherId;

    /**
     * 关联points_rule.id
     */
    private Integer ruleId;

    /**
     * 申请积分值(灵活规则可为NULL)
     */
    private BigDecimal applyPoints;

    /**
     * 申请说明
     */
    private String applyReason;

    /**
     * 证明材料
     */
    private String evidence;

    /**
     * 状态(待审核/已通过/已驳回)
     */
    private Integer statusId;

    /**
     * 审核人(关联instructor.id)
     */
    private Integer reviewerId;

    /**
     * 审核时间
     */
    private Date reviewTime;

    /**
     * 审核意见
     */
    private String reviewComment;

    /**
     *
     */
    private Date createTime;

    /**
     * 建议分值(教师填写)
     */
    private BigDecimal suggestedPoints;

    /**
     * 批准分值(院长填写)
     */
    private Double approvedPoints;

    /**
     * 关联的灵活规则ID
     */
    private Integer flexibleRuleId;
    @TableField(exist = false)
    private Teacher teacher;
    @TableField(exist = false)
    private Student student;
    @TableField(exist = false)
    private Object rule;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
